SPB Git
671 B · 10 lines typescript
1import { z } from "zod";2import { handler, parseBody } from "@/lib/api";3import { duplicateDatabase } from "@/lib/databases/service";4import { audit } from "@/lib/audit";5export const POST = handler(async ({ ws, params, req, user }) => {6  const b = await parseBody(req, z.object({ withRows: z.boolean().optional(), title: z.string().max(500).optional(), asTemplate: z.boolean().optional(), parentId: z.string().uuid().nullable().optional() }));7  const d = await duplicateDatabase(ws.id, params.id, b); await audit(user.id, "database.duplicate", { type: "database", id: params.id }, { to: d.id, withRows: !!b.withRows });8  return Response.json(d, { status: 201 });9});10
Files · main
Menu

Theme